https://byveera.blogspot.com/2020/01/part-three-groups.html
Part Three: Groups